Resolve simtools-tests directory when using integration tests config files in applications. - #2475
Conversation
There was a problem hiding this comment.
Pull request overview
This PR improves how simtools resolves ${static:...}, ${generated:...}, and ${downloaded:...} resource macros when running applications against integration-test config files (i.e., using a versioned simtools-tests checkout via SIMTOOLS_TESTS_PATH + SIMTOOLS_TESTS_TAG). It also introduces deterministic sorting of serialized production job grids and updates dependency catalog defaults.
Changes:
- Resolve test-resource macros against
simtools-tests/<tag>/integration_testswhen configured via environment variables (and adjust unit tests accordingly). - Sort production job-grid ECSV output deterministically during serialization and add a unit test for ordering.
- Update dependency catalog defaults and add changelog fragments.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
src/simtools/constants.py |
Adds environment-based selection of the active test-resources root via SIMTOOLS_TESTS_* variables. |
src/simtools/io/io_handler.py |
Switches macro resolution and IOHandler default test-resources path to use the active/root-selection helper. |
src/simtools/production_configuration/job_grid_io.py |
Sorts serialized job-grid tables by a set of configuration columns before writing. |
tests/unit_tests/io/test_io_handler.py |
Adds coverage for resolving macros using versioned SIMTOOLS_TESTS_PATH + SIMTOOLS_TESTS_TAG. |
tests/unit_tests/configuration/test_configurator.py |
Clears relevant env vars for stable resource-macro resolution behavior in the test. |
tests/unit_tests/production_configuration/test_job_grid_io.py |
Adds a unit test asserting deterministic sorting in serialized job grids. |
dependency_versions.yml |
Bumps model-database.default-tag to v0.17.1. |
docs/changes/2473.feature.md |
Adds a changelog entry for job-grid sorting. |
docs/changes/2483.model.md |
Adds a changelog entry for the model database default tag bump. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|




e.g. this works again:
and it resolve the path to
corsika_limits: ${downloaded:corsika_limits.ecsv}corretly.